import { InjectionToken } from '@angular/core';

import { ApesMessageConfig } from '../message';

export interface ApesNotificationConfig extends ApesMessageConfig {
  apesTop?: string;
  apesBottom?: string;
  apesPlacement?: 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight' | string;
}

export const Apes_NOTIFICATION_DEFAULT_CONFIG = new InjectionToken<ApesNotificationConfig>('Apes_NOTIFICATION_DEFAULT_CONFIG');

export const Apes_NOTIFICATION_CONFIG = new InjectionToken<ApesNotificationConfig>('Apes_NOTIFICATION_CONFIG');

export const Apes_NOTIFICATION_DEFAULT_CONFIG_PROVIDER = {
  provide : Apes_NOTIFICATION_DEFAULT_CONFIG,
  useValue: {
    apesTop         : '24px',
    apesBottom      : '24px',
    apesPlacement   : 'bottomRight',
    apesDuration    : 4500,
    apesMaxStack    : 7,
    apesPauseOnHover: true,
    apesAnimate     : true
  }
};
